/*
 * *****************************************************************************
 *  Copyright ( c ) 2019 huibur Inc. All Rights Reserved.
 *
 *  This software is the confidential and proprietary information of Huibur Inc
 *  (*Confidential Information*). You shall not disclose such Confidential Information
 *  and shall use it only in accordance with the terms of the license agreement
 *  you entered into with Huibur or a Huibur authorized
 *  reseller (the "License Agreement*).
 *  ******************************************************************************
 */
package com.huibur.devicecheck.service;

import com.huibur.devicecheck.model.param.DeviceCategoryParam;
import com.huibur.devicecheck.model.query.DeviceCategoryQuery;
import com.huibur.devicecheck.model.query.DeviceQuery;
import com.huibur.devicecheck.model.vo.DeviceCategoryVO;
import com.huibur.devicecheck.request.ObjRes;
import com.huibur.devicecheck.request.PageRes;

/*******************************************************
* @title: IDeviceCategoryService.java
* @description:
* @author wushiqi
* @date 2021/10/18
* @version 1.0
*******************************************************/
public interface IDeviceCategoryService {

    /**
     * 新增设备名称
     * @param deviceCategoryParam
     * @return
     */
    ObjRes<Void> insertDeviceCategory(DeviceCategoryParam deviceCategoryParam);

    /**
     * 删除设备名称
     * @param id
     * @return
     */
    Boolean deleteById(Long id);

    /**
     * 编辑设备名称
     * @param id
     * @param deviceCategoryParam
     * @return
     */
    ObjRes<Void> updateDeviceCategory(Long id, DeviceCategoryParam deviceCategoryParam);

    /**
     * 设备名称列表(查询并分页)
     * @param deviceCategoryQuery
     * @return
     */
    PageRes<DeviceCategoryVO> selectListDeviceCategory(DeviceCategoryQuery deviceCategoryQuery);

    /**
     * 获取设备名称详情
     * @param id
     * @return
     */
    DeviceCategoryVO selectDeviceCategoryById(Long id);
}
